package com.wali.modules.bil.dao;

import com.wali.modules.bil.vo.BilGoodsVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author walixu
 * @ClassName com.wali.modules.common.dao
 * @Description 物品信息dao接口
 * @email wali.xu@kpmg.com
 * @date 20/01/2019 2:14 下午
 */
@Mapper
public interface IBilGoodsDao {

    /**
     * @param bilGoods
     * @return
     * @throws
     * @Title saveBilGoods
     * @Description 新增运单信息
     */
    int saveBilGoods(@Param("bilGoods") BilGoodsVO bilGoods);

    /**
     * @param bilGoods
     * @return
     * @throws
     * @Title getBilGoods
     * @Description 查询符合条件的单条运单信息
     */
    int getBilGoods(@Param("bilGoods") BilGoodsVO bilGoods);

    /**
     * @param bilGoods
     * @return
     * @throws
     * @Title updateBilGoods
     * @Description 更新运单信息
     */
    int updateBilGoods(@Param("bilGoods") BilGoodsVO bilGoods);

    /**
     * @param bilGoods
     * @return
     * @throws
     * @Title deleteBilGoods
     * @Description 删除运单信息
     */
    int deleteBilGoods(@Param("bilGoods") BilGoodsVO bilGoods);

    /**
     * @param bilGoods
     * @return 收件人列表
     * @throws
     * @Title listBilGoods
     * @Description 查询所有符合条件的运单信息
     */
    List<BilGoodsVO> listBilGoods(@Param("bilGoods") BilGoodsVO bilGoods);

    /**
     * @param bilGoods
     * @return
     * @throws
     * @Title countBilGoods
     * @Description 统计符合条件的收件人数量
     */
    int countBilGoods(@Param("bilGoods") BilGoodsVO bilGoods);

    /**
     * @param ids
     * @return
     * @throws
     * @Title listBilGoodsByExpressId
     * @Description 根据运单id查询符合条件的商品信息
     */
    List<BilGoodsVO> listBilGoodsByExpressId(@Param("ids") List<Integer> ids);
}
